home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 1995 #1
/
Amiga Plus 1995 #1.iso
/
testprogramme
/
bild_grabber
/
quickgrab.doc
< prev
next >
Wrap
Text File
|
1994-12-13
|
10KB
|
266 lines
QuickGrab V1.1 by Steve Hines
QuickGrab is a program I wrote to fill a (small) gap in
software for 2.0/3.0 (especially the Amiga 4000). Most screen
grabbers do not even run under 2.0. The ones that do fail miserably
(9 times out of 10) under 3.0. With the Interleaved Workbench and
the AA Chipset, almost every grabber was gone. I didn't even need
a screen grabber for years until I bought my 4000 and got a Viewer
called Viewtek, which translates among other things, J-Peg/24bit into
AGA resolutions (like Hires-Interlaced HAM :-) I wanted to grab
those converted images and make them Workbench backdrops, but to
no avail: there exists not a single screen grabber that saves
screen modes in a 2.0/3.0 compatible way. Hence QuickGrab.
NOTE: QuickGrab V1.1 is COMPLETELY Freely Distributable. This
means that you can use it free of charge and pass it around free
of charge. I grant EXCLUSIVE disk-for-$ distribution rights to
Fred Fish. Anyone else, ask me FIRST. I claim all copyrights
on QuickGrab V1.1, intellectual and otherwise.
That being said:
New additions to V1.1:
Ability to set "Grab Delay" up to 99 seconds after grabkey pressed.
Can now save pictures that are changing during the grab.
Grabbing is now about 2 times faster (depending on where you save).
The grab delay plus an enhancement in V1.1 allows grabbing of
pull-down menus, dragging windows, etc.
For technical users: Can now grab pictures from screens with the
Layers locked.
Brief summary of features:
1) Grabs and saves ALL graphics modes, including 8 bits.
2) Saves the screen display modes properly. Old grabbers filter
out modes like DoubleNTSC, NTSC-Super-Hires, Super72.
3) Properly grabs and saves new-for-3.0 Interleaved bitmaps.
4) Uses the Commodities Exchange routines in 2.0, so that
Hotkeys/popkeys don't contend with other programs. This is
certainly not true of non-2.0 grabbers.
5) Loads from Workbench with a full complement of ToolTypes,
so that QuickGrab can be installed in WBStartup easily.
6) Has gadget interface that allows you to set save directory,
base filename, and grab hotkey.
7) Is able to successfully grab screens even if they are closed
DURING the grab.
8) Small and efficient. Totally 2.0/3.0 compatible.
9) I don't worry about making it 1.3 compatible (this IS a feature :-)
The program's operation is really very simple: at any time,
press the Grab hotkey (it defaults to "control lcommand s") and the
frontmost screen is grabbed and saved in the destination directory
(defaults to "RAM:") under the base filename (defaults to "QuickGrab")
with extension added (extension counts from .000 to .999).
All three of the above defaults can be changed through either
the icon's ToolTypes or through the program's gadget interface. (These
are explained below.)
ToolTypes:
CX_POPUP:
CX_POPKEY:
CX_PRIORITY:
See the Amiga User Guide for info on these ToolTypes.
HOTKEY:
Sets the Grab hotkey to any legal key combination.
Qualifiers allowed include: control, lalt, ralt, alt,
lcommand,rcommand, lshift, rshift, shift.
Keys allowed include: esc, space, f1, return, a-z, A-Z 1-10
Examples: HOTKEY=control lalt rshift esc
HOTKEY=alt f8
Default: HOTKEY=control lcommand s
See the Amiga User Guide for more information.
SAVEDIR:
Sets the directory where the grabbed pictures will be saved.
This can be any valid EXISTING directory anywhere.
Example: SAVEDIR=df0:pictures
Default: SAVEDIR=RAM:
BASEFILE:
Set the base filename for all pictures grabbed. For example,
if SAVEDIR=RAM: and BASEFILE=QuickGrab, any picture grabbed
would be saved as RAM:QuickGrab.xxx, where xxx is 000-999.
28 characters is the maximum length for the base filename.
Example: BASEFILE=GrabbedPic
Default: BASEFILE=QuickGrab
MESSAGE:
The message is the window that opens up while QuickGrab is
grabbing a screen. If this is checked, a window will open on
the public screen informing you when a picture is being
grabbed. The window is open only while QuickGrab is grabbing.
One of the few reason you might want to turn this off is
if you are grabbing the current public screen (i.e. the
Workbench screen) and you do NOT want the message window to
appear in the picture grabbed.
This value can be set to "YES" or "NO".
Default: MESSAGE=YES
DELAY:
This sets the Grab Delay in seconds. The Grab Delay is the
amount of time that QuickGrab will wait AFTER the Grab hotkey
has been pressed. This allows you to rearrange screens, move
windows, etc. in preparation for the grab. In addition, this
allows you to, for example, grab pull-down menus, dragging
windows, etc.
NOTE: With DELAY set for any value greater than 0, the message
window (if turned on) may not update to say "Grabbing Screen
and Saving..." while the screen is being grabbed. This will
ONLY occur if you are trying to grab pull-down menus, or other
Intuition features that prevent screen updating while active.
This DOES NOT affect the operation of QuickGrab.
Gadget window:
Save Directory:
This string gadget allows you to set the directory where
grabbed pictures will be saved.
The gadget to the far right of the Save Directory gadget is
a GetFile gadget. Clicking on this will allow you to
specify the save directory interactively through the
standard Amiga File Requester.
Base Filename:
See BASENAME above for a description of this gadget's function.
Grab Hotkey:
Specifies the Hotkey used to grab a picture. See HOTKEY above
for possible values of this Hotkey.
Delay Before Grabbing (seconds): This sets the number of seconds
that QuickGrab will wait before grabbing the screen. See
DELAY above for implications of this feature.
Show message when grabbing:
When checked, a message window will open on the current
public screen when QuickGrab is grabbing a picture.
You may want to turn the message window off when grabbing
the current public screen (i.e. the Workbench screen).
Otherwise the message window will appear in the saved picture.
Hide:
Will hide the Gadget Window. It can be reopened four ways:
1) Click on Show Interface in the Commodities Exchange
program (see the Amiga User Guide on how to use this.)
2) Press the CX_POPKEY key combination. This can be set
in the ToolTypes (see above). The default CX_POPKEY
is "control lcommand x".
3) Double click on the QuickGrab icon.
4) run QuickGrab from the CLI.
Quit:
Closes the QuickGrab window and removes QuickGrab from the
system. QuickGrab will no longer be available to grab screens.
You can also quit QuickGrab through the Commodities Exchange
program (see the Amiga User Guide for info on using this.)
In case you were still wondering, QuickGrab is 2.0 ONLY.
That's all there is to it.
By the way, if you own an Amiga with the AA Chipset, (currently
only the 4000), I suggest that you get Viewtek by Thomas Krehbiel.
It's fast, very useful, and it renders some beautiful Hires HAM
images from J-Pegs and 24 bit IFFs. This program was tested by
grabbing Viewtek's screens (among others). I got Viewtek.lha from
PORTAL. I also suggest (for pure graphics entertainment)
WindowBlender by Fred Mitchell. It renders some beautiful formulae.
It also lacks an IFF Save routine, so it's great practice for
QuickGrab :-) I got WindowBlender.lha from Portal as well.
If you have any questions about the operation of QuickGrab, or
any bug reports (bugs???) please feel free to mail me at one
of the electronic addresses below.
If you are interested in the source code to QuickGrab, I will
E-Mail it to you for free, you just have to ask. The code is written
in Manx C 5.2, but it should compile with SAS/C just fine, there
is nothing complex in it.
The source code for QuickGrab is Copyright 1992 Steve Hines.
Portions of this program include code from:
Jerry Morrison and Steve Shaw, Electronic Arts
Jim Kent (Dancing Flame)
The Amiga Rom Kernal Manual, Commodore Amiga
Everyone above still retains copyrights on their code.
QuickGrab's interface was generated using GadToolsBox v1.3 by
Jan van den Baard. GTB does a great job of designing interfaces,
I recommend it to anyone wanting to use GadTools. (I just wish
it didn't have so many darned Enforcer hits!!)
My E-Mail Addresses:
HOLOSOFT (Portal)
HOLOSOFT@cup.Portal.com (USENET & InterNet)
shines@ucsd.edu (USENET)
Thanks for using QuickGrab.
Steve Hines
Revision History:
V1.1: IFF code now sets NOSIZEYET instead of precalculating
the compression. This allows me to save bitmaps that
are changing while I'm grabbing. This also speeded up the
saving routine.
Added Grab Delay feature.
Added code to check the Layer locks on the public screen
and the screen-to-grab so that the message window does
not try to open or update if the public screen is locked,
and so that if the screen-to-grab is locked, I don't try
to lock it and halt the grabbing of the screen. This also
means that the user can grab bitmaps from disappearing
screens :-( Unfortunately, there is no way around this
(that I know of)
V1.0: Original release.